package com.example.demo.domain.app.vo;

import lombok.Data;

/**
 * UserBaseVO
 *
 * @author haochen78
 * @date 2025/11/17 01:31
 **/
@Data
public class UserBaseVO {
    /** 用户ID */
    private String id;
    /** 团队ID */
    private Integer teamId;
    /** 用户名 */
    private String username;
    /** 用户昵称 */
    private String nick;
    /** 头像URL */
    private String avatarUrl;
    /** 手机号 */
    private String mobile;
    /** 用户状态（0=正常，业务自定义） */
    private Integer status;
    /** 用户状态描述 */
    private String statusStr;
    /** 手机号是否对访客可见 */
    private Boolean mobileVisInvister;
    /** 生日（格式：yyyy-MM-dd） */
    private String birthday;
    /** 生日福利领取成功年份 */
    private Integer birthdayProcessSuccessYear;
    /** 城市（英文） */
    private String city;
    /** 用户创建时间 */
    private String dateAdd;
    /** 最后登录时间 */
    private String dateLogin;
    /** 性别（2=女，1=男，0=未知，需结合业务） */
    private Integer gender;
    /** 等级获取时间 */
    private String getLevelDate;
    /** 注册IP地址 */
    private String ipAdd;
    /** 最后登录IP地址 */
    private String ipLogin;
    /** 是否人脸验证 */
    private Boolean isFaceCheck;
    /** 是否身份证验证 */
    private Boolean isIdcardCheck;
    /** 是否为商家 */
    private Boolean isSeller;
    /** 是否为团队 leader */
    private Boolean isTeamLeader;
    /** 是否为团队成员 */
    private Boolean isTeamMember;
    /** 最后下单时间 */
    private String lastOrderDate;
    /** 等级ID（关联 userLevel.id） */
    private Integer levelId;
    /** 等级是否续期 */
    private Boolean levelRenew;
    /** 省份（英文） */
    private String province;
    /** 登录密码状态（yes=已设置，no=未设置） */
    private String pwd;
    /** 支付密码状态（yes=已设置，no=未设置） */
    private String pwdPay;
    /** 推荐人类型（0=默认，业务自定义） */
    private Integer referrerType;
    /** 商家等级ID */
    private Integer sellerLevelId;
    /** 注册来源（0=小程序，业务自定义） */
    private Integer source;
    /** 注册来源描述 */
    private String sourceStr;
    /** 等级任务发放月份（格式：yyyyMM） */
    private Integer taskUserLevelSendMonth;
    /** 等级任务是否每月发放 */
    private Boolean taskUserLevelSendPerMonth;
    /** 等级任务是否已升级 */
    private Boolean taskUserLevelUpgrade;
}
